Course Outline

1. Introduction
2. Programming Strategies
3. Arrays
4. Asymptotic Analysis (big-O notation)
5.
Lists
a) Singly link lists
b) Doubly link lists
c) Circular link lists
1st Midterm

6. Stacks and its applications
7. Queues
a) Simple queues
b) Priority queues
c) Circular queues
8.
Recursion
a) Linear recursion
b) Binary recursion




9. Trees and tree traversal
10.
Huffman Encoding
11. Searching
a) Sequential search
b) Binary search
c) Tree search
d) Hashing
12.
Sorting
a) Bubble sort
b) Insertion sort
c) Selection sort
d) Quick sort
e) Heap sort
f) Shell sort
g) Merge sort
h) Radix sort


2nd Midterm
13. General n-array trees
14. Balanced Binary trees
a) B-trees
b)
Red-Black trees
c) AVL trees

Final Exam